package com.wing.warehouse.controller.admin.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wing.warehouse.model.entity.WarehouseFactoryAdministrationVO;
import com.wing.warehouse.model.entity.WarehouseFactoryShelfSpaceVO;
import com.wing.warehouse.model.entity.WrehouseFactoryAdministrationEntity;
import com.wing.warehouse.model.request.WarehouseFactoryAdministrationForm;

import java.util.List;
import java.util.Map;

public interface WarehouseFactoryAdministrationService extends IService<WrehouseFactoryAdministrationEntity> {


    List<WarehouseFactoryAdministrationVO> selectAll(String productId) ;

    /**
     * 添加
     *
     * @param warehouseForm
     * @return
     */
    int add(WarehouseFactoryAdministrationForm warehouseForm);

    /**
     * 列表-app
     *
     * @param params
     *
     * @return
     */
    List<WarehouseFactoryAdministrationVO> list4app(Map<String, Object> params);

    /**
     * 分页list-app
     *
     * @param page
     * @param params
     *
     * @return
     */
    Page<WarehouseFactoryAdministrationVO> pageList4app(Page page, Map<String, Object> params);

    /**
     * 详情-app
     *
     * @param id
     *
     * @return
     */
    WarehouseFactoryAdministrationVO get4appById(Long id);


    WarehouseFactoryAdministrationVO findFactoryInfo(Long id);

    List<WarehouseFactoryShelfSpaceVO> findFactoryShelfSpace(String warehouseId);

    List<WarehouseFactoryAdministrationVO> findFactoryShelfSpaceByWarehouseAreaId(Long warehouseAreaId);

    WarehouseFactoryShelfSpaceVO findFactoryShelfByShelId(Long ShelId);

    List<WarehouseFactoryShelfSpaceVO> info(Long id);

    List<WrehouseFactoryAdministrationEntity> findByContract(Long id);
}
